home *** CD-ROM | disk | FTP | other *** search
/ Aminet 28 / Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso / Aminet / dev / misc / vahunz.lha / vahunz / source / ubiqx / ubi_BinTree.h < prev   
Encoding:
C/C++ Source or Header  |  1998-09-17  |  3.1 KB  |  142 lines

  1. /*
  2.  * This source file is part of Vahunz,
  3.  * a tool to make source code un-/more legible.
  4.  *
  5.  *--------------------------------------------------------------------------
  6.  *
  7.  * Vahunz and the Ugly library are Copyright (C) 1998 by
  8.  * Thomas Aglassinger <agi@giga.or.at>
  9.  *
  10.  * All rights reserved.
  11.  *
  12.  * Refer to the manual for more information.
  13.  *
  14.  *--------------------------------------------------------------------------
  15.  *
  16.  * Ubiqx library is Copyright (C) 1991-1998 by
  17.  * Christopher R. Hertel <crh@ubiqx.mn.org>
  18.  *
  19.  * Ubiqx library is free software; you can redistribute it and/or
  20.  * modify it under the terms of the GNU Library General Public
  21.  * License as published by the Free Software Foundation; either
  22.  * version 2 of the License, or (at your option) any later version.
  23.  *
  24.  */
  25. #ifndef y8U
  26. #define y8U
  27. #define z1Zy 0xFF
  28. #define d5B 0x00
  29. #define t3Z 0x01 
  30. #define o6W 0x02 
  31. #define e4E 0x00
  32. #define i0E 0x01
  33. #define w6O 0x02
  34. #define g8I i0E
  35. typedef enum {
  36. h3L = 1,
  37. e8Un,
  38. u4Iz,
  39. h5D,
  40. e2G
  41. } b9L;
  42. #define q2Q(W) ((char)( (W) - g8I ))
  43. #define k6E(W) ((char)( ((char)y6Q( W )) + g8I ))
  44. #define h3H(W) ((char)( g8I - ((W) - g8I) ))
  45. #define h5J(A) \
  46. ((o6W & ((A)->flags))?(z1Zy):(d5B))
  47. #define k0Sf(A) \
  48. ((t3Z & ((A)->flags))?(z1Zy):(d5B))
  49. typedef unsigned char h3R;
  50. typedef void *y8Or; 
  51. typedef struct a6M {
  52. struct a6M *e2Q[ 3 ];
  53. char h1V;
  54. } h3N;
  55. typedef h3N *y8Ut; 
  56. typedef int (*z9H)( y8Or, y8Ut );
  57. typedef void (*r1Pc)( y8Ut, void * );
  58. typedef void (*s8U)( y8Ut );
  59. typedef struct {
  60. y8Ut k4S; 
  61. unsigned long count; 
  62. z9H e2Qt; 
  63. unsigned char flags; 
  64. } r9Z;
  65. typedef r9Z *g8Sh; 
  66. long y6Q( long x );
  67. y8Ut y6S( y8Ut l9P );
  68. g8Sh h9Bk( g8Sh v5F,
  69. z9H k4M,
  70. unsigned char Flags );
  71. h3R n5F( g8Sh v5F,
  72. y8Ut i8C,
  73. y8Or x1B,
  74. y8Ut *j9B );
  75. y8Ut j7Vi( g8Sh v5F,
  76. y8Ut g4C );
  77. y8Ut u6O( g8Sh v5F,
  78. y8Or k2G,
  79. b9L n7N );
  80. y8Ut w6I( g8Sh v5F,
  81. y8Or k2G );
  82. y8Ut m2Y( y8Ut P );
  83. y8Ut x7Hk( y8Ut P );
  84. y8Ut n3Bi( y8Ut P );
  85. y8Ut j9X( y8Ut P );
  86. y8Ut v7Z( g8Sh v5F,
  87. y8Or o0M,
  88. y8Ut p );
  89. y8Ut u4A( g8Sh v5F,
  90. y8Or o0M,
  91. y8Ut p );
  92. h3R l3N( g8Sh v5F,
  93. r1Pc p7B,
  94. void *UserData );
  95. h3R v9Xy( g8Sh v5F,
  96. s8U v9Z );
  97. y8Ut t9L( y8Ut r1L );
  98. int r7F( int u0Qh, char *list[] );
  99. #define k8U y8Or
  100. #define h7L h3N
  101. #define u8Ol y8Ut
  102. #define y8M r9Z
  103. #define h1L g8Sh
  104. #define g0Y z9H
  105. #define x1Di r1Pc
  106. #define b9Lo s8U
  107. #define o2W( x ) y6Q( x )
  108. #define f5L( Np ) y6S( (y8Ut)(Np) )
  109. #define q6G( Rp, Cf, Fl ) \
  110. h9Bk( (g8Sh)(Rp), (z9H)(Cf), (Fl) )
  111. #define j3D( Rp, Nn, Ip, On ) \
  112. n5F( (g8Sh)(Rp), (y8Ut)(Nn), \
  113. (y8Or)(Ip), (y8Ut *)(On) )
  114. #define l9Xe( Rp, Dn ) \
  115. j7Vi( (g8Sh)(Rp), (y8Ut)(Dn) )
  116. #define c4U( Rp, Ip, Op ) \
  117. u6O( (g8Sh)(Rp), \
  118. (y8Or)(Ip), \
  119. (b9L)(Op) )
  120. #define e6K( Rp, Ip ) \
  121. w6I( (g8Sh)(Rp), (y8Or)(Ip) )
  122. #define x3Ns( P ) m2Y( (y8Ut)(P) )
  123. #define l9B( P ) x7Hk( (y8Ut)(P) )
  124. #define p5D( P ) n3Bi( (y8Ut)(P) )
  125. #define y0Ev( P ) j9X( (y8Ut)(P) )
  126. #define m2U( Rp, Ip, P ) \
  127. v7Z( (g8Sh)(Rp), \
  128. (y8Or)(Ip), \
  129. (y8Ut)(P) )
  130. #define w6S( Rp, Ip, P ) \
  131. u4A( (g8Sh)(Rp), \
  132. (y8Or)(Ip), \
  133. (y8Ut)(P) )
  134. #define l1J( Rp, En, Ud ) \
  135. l3N((g8Sh)(Rp), (r1Pc)(En), (void *)(Ud))
  136. #define v3Z( Rp, Fn ) \
  137. v9Xy( (g8Sh)(Rp), (s8U)(Fn) )
  138. #define x1T( Nd ) \
  139. t9L( (y8Ut)(Nd) )
  140. #define z5Ti( s, l ) r7F( s, l )
  141. #endif 
  142.